package appBanco.client;

import orb.interoperabilidade.PDU;
import util.Constantes;
import appBanco.basicas.exception.SaldoInsuficienteException;

public class Stub{

	public void creditar(String numConta, double valor) {
		PDU pdu = new PDU();
		pdu.setTipoMensagem(Constantes.request);
		pdu.setOperacao(Constantes.creditar);
		
		String temp = valor + "";
		temp = temp.trim();
		
		Object[] param = new Object[3];
		param[0] = numConta;
		param[1] = temp.length();
		param[2] = valor;
		pdu.setParametros(param);
		
		pdu.send();
		
		
		
		Object[] result = pdu.recieve();
		//System.out.println(result.length);
		
		//System.out.println(msg);
		
	}

	public void debitar(String numConta, double valor) throws SaldoInsuficienteException {
		PDU pdu = new PDU();
		pdu.setOperacao(Constantes.debitar);
		
		String temp = valor + "";
		temp = temp.trim();
		
		Object[] param = new Object[3];
		param[0] = numConta;
		param[1] = temp.length();
		param[2] = valor;
		pdu.setParametros(param);
		
		pdu.send();
		
		//pdu.setTipoMensagem(Constantes.response);
		Object[] result = pdu.recieve();
	}

	public void transferir(String contaOrigem, String contaDestino, double valor) {
		PDU pdu = new PDU();
		pdu.setTipoMensagem(Constantes.request);
		pdu.setOperacao(Constantes.transferir);
		
		String temp = valor + "";
		temp = temp.trim();
		
		Object[] param = new Object[4];
		param[0] = contaOrigem;
		param[1] = contaDestino;
		param[2] = temp.length();
		param[3] = valor;
		pdu.setParametros(param);
		
		pdu.send();
		
		Object[] result = pdu.recieve();
	}

}
